The Open Mobile Alliance (OMA) has proposed a Presence Service for implementation in a packet data communication system. In a Presence Service such as the one proposed by OMA, a Presentity is a logical entity (typically representing a human) that has presence information associated with it. A Presence Source provides presence information about a Presentity to a Presence Server, and a Watcher requests presence information about a Presentity (or watcher information about a Watcher) from the Presence Server. A Presence Source implemented in a first communication device operated by a first Presence User may publish presence information to the Presence Server by conveying a Session Initiation Protocol SIP (Session Initiation Protocol) PUBLISH message comprising the presence information to the Presence Server. The presence information includes a current state of one or more Presence Information Elements, for example, a location, an availability, a willingness, a mood, an activity, and so on associated with a Presentity representing the first Presence User. The Presence Server then stores the current state of each Presence Information Element in association with the Presentity. In addition, the Presence Server maintains a profile in association with each Presentity, such as the Presentity representing the first Presence User, which profile may include access rules that determine which set of Watchers are authorized to see presence information associated with the Presentity.
A second Presence User may wish to know a state of one or more Presence Information Elements associated with the first Presence User. In order to be informed of the Presence Information Elements associated with the first Presence User, a second Watcher implemented in a second communication device associated with the second Presence User subscribes to watch the first Presence User by conveying a SIP SUBSCRIBE message to the Presence Server requesting presence information associated with the Presentity (that is, the logical entity representing the first Presence User). The SIP SUBSCRIBE message may request notification concerning all Presence Information Elements associated with the Presentity or may request notification concerning a subset of the Presence Information Elements associated with the Presentity. In the latter case, the second Watcher includes a filter in the SIP SUBSCRIBE message that indicates which Presence Information Elements to include or exclude in notifications, and/or indicates triggers to send a notification, for example when a particular Presence Information Element changes from or to a specified value. If the second Watcher is authorized by the Presence Server, for example, by the access rules associated with the Presentity, the second Watcher is then provided with a current state of each requested presence attribute associated with the Presentity via a SIP NOTIFY message.
A Presence Source and a Watcher are logical entities that can be combined in an implementation. For example, the first communication device operated by the first Presence User may implement a Presence Source to publish presence information associated with the Presentity and implement a first Watcher to subscribe to watcher information, that is, to be notified of the watchers, such as the second Watcher, that have subscribed to the presence information associated with the Presentity.
The Presence Source associated with the Presentity then publishes presence information to the Presence Server every time a state of one or more Presence Information Elements changes, regardless of the Presence Information Elements watched by the second Presence User. When one or more Presence Information Elements associated with the Presentity are changing rapidly, the resulting exchange of messaging can consume significant system capacity in a limited bandwidth communication system, such as a wireless communication system, and can consume excessive communication device power when the first communication device comprises a limited life power supply, such as a battery.
Therefore, a need exists for method and apparatus that reduces the messaging exchanged between the first communication device associated with the first Presence User, and the Presence Server in a provision of a Presence Service.
One of ordinary skill in the art will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help improve understanding of various embodiments of the present invention. Also, common and well-understood elements that are useful or necessary in a commercially feasible embodiment are often not depicted in order to facilitate a less obstructed view of these various embodiments of the present invention.